/**************************************************************************************************
**                                                                                               **
**  文件名称:  dal_uart_reg.h                                                                    **
**  版权所有:  CopyRight @ Xiamen Yaxon NetWork CO.LTD. 2017                                     **
**  文件描述:  串口资源的配置管理                                                                **
**  ===========================================================================================  **
**  创建信息:  | 2017-7-28 | LEON | 创建本模块                                                   **
**  ===========================================================================================  **
**  修改信息:  单击此处添加....                                                                  **
**************************************************************************************************/
#ifndef DAL_UART_CFG_H
#define DAL_UART_CFG_H

/*************************************************************************************************/
/*                           全局控制结构体定义                                                  */
/*************************************************************************************************/
typedef struct {
    INT8U       com;
    INT8U       enable;
    INT32U      uart_pin_tx;
    INT32U      uart_pin_rx;
    
    INT32U      dma_base_tx;
    INT32U      dma_base_rx;
    
    INT32U      uart_base;
    INT32U      gpio_base;
    
    INT32U      uart_rcc;
    INT32U      uart_remap;
} UART_TBL_T;

/*************************************************************************************************/
/*                           定义统一串口通道编号                                                */
/*************************************************************************************************/
#ifdef UART_DEF
#undef UART_DEF
#endif 

#define UART_DEF(_COM_, _ENABLE, _PIN_TX, _PIN_RX,  _DMA_TX_BASE, _DMA_RX_BASE, _UART_BASE, _GPIO_BASE, _RCC, _REMAP) \
                 _COM_,
typedef enum {
    #include "dal_uart_reg.def"
    UART_COM_MAX
} UART_COM_E;

const UART_TBL_T *DAL_UART_GetRegTblInfo(INT8U com);
INT8U DAL_UART_GetCfgTblMax(void);

#endif


